package com.hmy.pig.mapper;





import com.hmy.pig.domain.HmyPigLive;
import com.hmy.staff.domain.HmyStaff;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @Entity hmy-pig.domain.HmyPigBreed
 * @author zhl
 */
public interface PigLiveMapper {

    /**
     * 根据条件分页查询猪只分娩记录列表:  条件 母猪耳号、分娩类型、分娩负责人、分娩时间
     *
     * @param pigCode 猪只耳号
     * @param pigLiveType 配种方式
     * @param pigLiveManager 配种负责人
     * @param pigLiveDatetimeStart 配种 开始时间
     * @param pigLiveDatetimeEnd 配种结束时间
     * @return 猪只信息集合信息
     */

    List<HmyPigLive> selectPigLiveList(@Param("pigCode") String pigCode,
                                         @Param("pigLiveType") Integer pigLiveType,
                                         @Param("pigLiveManager")  String pigLiveManager,
                                         @Param("dateStart") String pigLiveDatetimeStart,
                                         @Param("dateEnd") String pigLiveDatetimeEnd);



    /**
     * @param hmyPigLive
     * @return int
     * @author ZHL
     * @date 2024/1/30 14:49
     * @description   新增猪只分娩记录
     */
    int insertPigLive(HmyPigLive hmyPigLive);

    /**
     *  通过猪只耳号查询猪只分娩记录
     *
     * @author ZHL
     * @date 2024/1/30 9:57
     *
     */
    HmyPigLive selectPigLiveByPigLiveId(Long pigLiveId);

    /**
     * @param hmyPigLive
     * @return int
     * @author ZHL
     * @date 2024/1/30 10:07
     * @description 修改猪只分娩记录信息
     */
    int  updatePigLive(HmyPigLive hmyPigLive);

    /**
     * @param pigLiveId
     * @return int
     * @author ZHL
     * @date 2024/1/30 10:26
     * @description   通过PigLiveId 删除 猪只分娩记录信息
     */
    int  deletePigLiveByPigLiveId(Long pigLiveId);
    /**
     * @param pigLiveIds
     * @return int
     * @author ZHL
     * @date 2024/1/30 13:38
     * @description    批量删除猪只分娩记录信息
     */
    int deletePigLiveByPigLiveIds(Long[] pigLiveIds);
    /**
     * 获取员工表中所有的分娩管理员
     * @return
     */
    public List<HmyStaff> findAllStaffName();
}




